Git হলো একটি বিতরণকৃত ভার্সন কন্ট্রোল সিস্টেম যা কোডের ইতিহাস ট্র্যাক করে এবং একাধিক ডেভেলপারকে একই প্রজেক্টে একসাথে কাজ করার সুযোগ দেয়। এটি কোডের পরিবর্তনগুলি রেকর্ড করে রাখে এবং একাধিক সংস্করণের মধ্যে সহজে পরিবর্তন করা যায়। Git বিশেষ করে কোডের সহযোগিতায় ব্যবহৃত হয়, বিশেষত ওপেন সোর্স প্রকল্পগুলির মধ্যে।
Git এর বেসিক ধারণা
- Version Control (ভার্সন কন্ট্রোল):
Git ব্যবহার করে আপনি আপনার কোডের বিভিন্ন সংস্করণ সংরক্ষণ করতে পারেন, যা আপনি যেকোনো সময় প্রয়োজন অনুযায়ী ফিরে পেতে পারেন। - Repository (রিপোজিটরি):
রিপোজিটরি হলো একটি স্টোরেজ স্পেস যেখানে কোড এবং তার পরিবর্তনগুলি রাখা হয়। Git-এ দুটি ধরনের রিপোজিটরি থাকতে পারে:- Local Repository: এটি আপনার কম্পিউটারে থাকে।
- Remote Repository: এটি GitHub, GitLab, Bitbucket-এর মতো সার্ভারে থাকে।
- Commit (কমিট):
কমিট হলো একটি পয়েন্ট বা স্ন্যাপশট যেখানে আপনার কোডের পরিবর্তন সেভ করা হয়। প্রতিটি কমিট একটি ইউনিক আইডি দিয়ে চিহ্নিত করা হয়। - Branch (ব্রাঞ্চ):
ব্রাঞ্চ হলো কোডের একটি স্বাধীন লাইনে কাজ করার পদ্ধতি। মূল কোড লাইনের সাথে কোনো পরিবর্তন না করেই নতুন ফিচার বা ফিক্সের জন্য আলাদা ব্রাঞ্চ তৈরি করা যায়। - Merge (মার্জ):
মার্জ হলো দুটি আলাদা ব্রাঞ্চকে একত্রিত করার প্রক্রিয়া। একটি ফিচার ব্রাঞ্চের কাজ মূল ব্রাঞ্চের সাথে মার্জ করা হয়।
Git এর সাধারণ কমান্ডস
১. Git ইনস্টল করা
- Windows/macOS/Linux: Git এর অফিসিয়াল ওয়েবসাইট থেকে ডাউনলোড এবং ইনস্টল করুন।
- কমান্ড লাইনে
git --versionলিখে Git ইনস্টলেশন চেক করা যায়।
২. Git রেপোজিটরি তৈরি করা
নতুন রেপোজিটরি তৈরি করা:
git initএটি একটি নতুন Git রেপোজিটরি তৈরি করে বর্তমান ডিরেক্টরিতে।
রিমোট রেপোজিটরি ক্লোন করা (কপি করা):
git clone <repository-url>উদাহরণ:
git clone https://github.com/user/repository.git
৩. ফাইল ট্র্যাকিং এবং পরিবর্তন যোগ করা
ফাইল স্টেজিং (অঞ্চলভুক্ত করা) করা:
git add <file-name>সমস্ত পরিবর্তিত ফাইল যোগ করতে:
git add .পরিবর্তন কমিট করা:
git commit -m "Your commit message"
৪. Git ব্রাঞ্চ ব্যবস্থাপনা
ব্রাঞ্চ তৈরি করা:
git branch <branch-name>ব্রাঞ্চ পরিবর্তন (সুইচ) করা:
git checkout <branch-name>ব্রাঞ্চ মার্জ করা:
git merge <branch-name>
৫. রিমোট রেপোজিটরি ব্যবস্থাপনা
রিমোট রেপোজিটরিতে পরিবর্তন পাঠানো:
git push origin <branch-name>উদাহরণ:
git push origin masterরিমোট রেপোজিটরি থেকে ডেটা ফেচ করা:
git pull origin <branch-name>উদাহরণ:
git pull origin masterরিমোট রেপোজিটরি চেক করা:
git remote -v
৬. Git স্ট্যাটাস এবং ইতিহাস চেক করা
স্ট্যাটাস চেক করা (ফাইলের অবস্থান):
git statusকমিট ইতিহাস দেখতে:
git log
৭. ফাইল ফিরিয়ে আনা
কোনো পরিবর্তন ফিরিয়ে আনা (স্টেজিং এরিয়া থেকে):
git reset <file-name>শেষ কমিটটি ফিরিয়ে আনা (ক্যানসেল করা):
git reset --hard
৮. Git কনফিগারেশন
ব্যবহারকারীর নাম এবং ইমেইল সেট করা:
git config --global user.name "Your Name" git config --global user.email "your.email@example.com"
Git এর উপকারিতা
- ডিস্ট্রিবিউটেড:
Git একটি ডিস্ট্রিবিউটেড ভার্সন কন্ট্রোল সিস্টেম, অর্থাৎ প্রতিটি ডেভেলপার নিজের কম্পিউটারে সম্পূর্ণ রিপোজিটরির কপি পায়। এতে অনলাইন সংযোগেরও প্রয়োজন হয় না। - সহজে মর্জ এবং ব্রাঞ্চিং:
Git খুব সহজে নতুন ফিচারের জন্য ব্রাঞ্চ তৈরি এবং মার্জ করার সুবিধা দেয়, যা কোডের স্বাধীন উন্নয়নকে সহায়ক করে। - প্রবণতা ট্র্যাকিং:
Git এর মাধ্যমে সহজেই কোডের সমস্ত পরিবর্তন ট্র্যাক করা যায়, এবং প্রয়োজন অনুযায়ী পূর্ববর্তী সংস্করণে ফিরে যাওয়া যায়। - সহযোগিতা:
একাধিক ডেভেলপার একই প্রজেক্টে একসাথে কাজ করতে পারে, এবং তাদের পরিবর্তনগুলো একত্রিত করা যায় সহজে।
সারসংক্ষেপ
Git একটি শক্তিশালী এবং বিশ্বস্ত ভার্সন কন্ট্রোল সিস্টেম, যা সফটওয়্যার ডেভেলপমেন্টের জন্য অপরিহার্য। এর মাধ্যমে আপনি কোডের ইতিহাস ট্র্যাক করতে, পরিবর্তন শেয়ার করতে, এবং একাধিক ডেভেলপারদের সাথে কার্যকরভাবে কাজ করতে পারেন। Git কমান্ডগুলি সঠিকভাবে জানলে আপনি দ্রুত এবং দক্ষভাবে কাজ করতে পারবেন।
Read more